This invention relates in general to distributed information systems, and more particularly to Automatic Route Selection (ARS) using RIP caching in a distributed communication system.
Telecommunication systems have recently been designed for providing a variety of real-time services and features in an open distributed environment through the collaboration of a set of software components called agents. Such multi-agent systems are designed in such a way that they may adapt and evolve in the face of changing environments. One such multi-agent system is known as MANA (Multi-Agent Architecture for Networking Applications) developed by Mitel Corporation. Through the use of distributed agent architecture, the system meets high reliability levels and adapts to accommodate technological or service evolution. To achieve these goals, intelligence or learning mechanisms are provided to update service information derived from the operation of the agents. This information is used to redefine the agents and to reallocate resources for correcting failures and to meet the requirements of a defined service more precisely.
An application or service in a multi-agent system is mapped as a series of calls amongst agents to perform the service. Each agent specifies its type, quantity and quality of service (QoS) in order to provide for an overall application. Since multi-agent systems are implemented in an open environment, no agent has prior knowledge of any other agent. The only knowledge that an agent possesses is its requirements and capabilities to provide a specific type of service. Thus, an agent may be required to find other agents to fulfill certain of its service requirements. A calling agent (referred to herein as a Bid Manager) sends out a bid for services to a plurality of called agents (referred to herein as Bidders), each of whom may be capable of providing the necessary resources for the Bid Manager to complete its task. The Bid Manager receives and evaluates the bids from the various Bidders and selects the agent which has the best chance of success in performing the requested service. This is referred to herein as selecting the xe2x80x9clowest bidxe2x80x9d.
One example of a classic bidding mechanism of the foregoing type is disclosed in commonly owned U.S. Pat. No. 5,675,636 entitled Adaptive Method of Allocating Calls. According to this system, a Router Agent sends a call for bids to a plurality of Carrier Agents in order to determine the cost to complete a call by each of the Carrier Agents. The system then selects the cheapest bid. In the embodiment disclosed in U.S. Pat. No. 5,675,636 all of the Bidders are running in the same PBX as the BidManager. However, in the case of a distributed telecommunications system, some of the bidding Carrier Agents may be running on one or more remote PBX""s that are linked with the local PBX through a leased line, as set forth in co-pending and commonly owned patent application Ser. No. 09/455,658 filed Dec. 7, 1999 and entitled Distributed Technique for Allocating Calls. In such a system it is important to optimize the bidding process to avoid having to request bids from each Bidder each time a service is requested. Requesting bids can be time-costly and therefore tend to be inapplicable in real-time applications such as Advanced Automatic Route Selection (AARS) as set forth in U.S. Patent 5,675,636. Optimizations to ease the burdens of giving and receiving bids can lower material and operational costs of systems especially in the case of distributed systems.
According to the present invention, the well-known RIP routing algorithm is applied to a caching mechanism for optimizing the bidding process in an AARS system. The RIP algorithm used in the Internet to route data (ref RFC 1058), requires each router to send to its neighbors a copy of its routing table with the distance (number of hops) that separates it from the different nodes of the network. However, the problem addressed by the present invention is not minimization of the number of hops between the nodes, but rather the cost between the terminal node of the path and the local carrier it uses to get to the actual destination. The inventors have realized that it is not realistic to hold all of the destinations in the world in a single table. This is especially true if the network is not owned or managed by a single entity. Therefore, the routing table generated by the system of the present invention consists of a finite number of nodes in the network of PBXs, and the most frequently used terminal destinations of the calls of the users of the PBX system. These destinations are then cached using the caching mechanism set forth in commonly owned patent application Ser. No. 09/768,129 filed Jan. 23, 2001 entitled Caching Mechanism to Optimize a Bidding Process Used to Select Resources and Services. Specifically, a caching mechanism is provided for storing the latest bids by one or more Bidders for a given bidding context.